Download prioritization for intelligent content distribution

ABSTRACT

Systems and methods for transmitting multimedia data are disclosed which, in some embodiments, may comprise polling a first wireless device to obtain at least a first statistics of consumption of content previously transmitted to the first wireless device and polling a second wireless device to obtain at least a second statistics of consumption of content previously transmitted to the second wireless device. The method also comprises determining the resources available to transmit a first content and a second content to the first and second wireless device, wherein the first content to be transmitted to the first wireless device is selected based on the first statistics of consumption, and wherein the second content to be transmitted to the second wireless device is selected based on the second statistics of consumption. The method also comprises creating a priority list based on the first statistics of consumption and the second statistics of consumption, wherein the priority list comprises the first wireless device and the first content and the second wireless device and the second content and transmitting the first content to the first wireless device and the second content to the second wireless device according to the priority list and according to the resources available.

CROSS-REFERENCE TO RELATED APPLICATIONS

None.

STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

Not applicable.

REFERENCE TO A MICROFICHE APPENDIX

Not applicable.

BACKGROUND

Wireless networks permit the conveyance of multimedia content towireless users. This content may include information that is deliveredto an end user in the form of audio, video, and other content ofinterest to a wireless user. This content allows a wireless user toobtain information delivered directly to the wireless user while thewireless user is mobile.

While multimedia content offers rich content to a user, this contentmust be delivered to a wireless user. Several constraints may exist in anetwork that limit the amount of content that may be delivered to awireless user including the available bandwidth provided by a localwireless base transceiver station, the number of concurrent users in thearea, and interference that may be present.

SUMMARY

In an embodiment, a method for transmitting multimedia data is providedthat comprises polling a first wireless device to obtain at least afirst statistics of consumption of content previously transmitted to thefirst wireless device and polling a second wireless device to obtain atleast a second statistics of consumption of content previouslytransmitted to the second wireless device. The method also comprisesdetermining the resources available to transmit a first content and asecond content to the first and second wireless device, wherein thefirst content to be transmitted to the first wireless device is selectedbased on the first statistics of consumption, and wherein the secondcontent to be transmitted to the second wireless device is selectedbased on the second statistics of consumption. The method also comprisescreating a priority list based on the first statistics of consumptionand the second statistics of consumption, wherein the priority listcomprises the first wireless device and the first content and the secondwireless device and the second content and transmitting the firstcontent to the first wireless device and the second content to thesecond wireless device according to the priority list and according tothe resources available.

In another embodiment, a system for prioritizing the transmission ofwireless data is provided. The system comprises a data server contentcomponent, a transmission component, a network statistic component, anda network prioritization component. The data server content componentreceives content. The transmission component transmits the content to atleast one wireless device. The network statistic component determinesthe current status of the network including a number of wireless devicesin the coverage area of the transmission component and an availablebandwidth. The network prioritization component polls the at least onewireless device to determine a history of usage of a previouslytransmitted content and to determine a current power status of thewireless device. When the current power status of the at least onewireless device is at least one of connected to external power orbattery power reserve above a predefined threshold, the networkprioritization component promotes transmission of the content by thetransmission component.

In yet another embodiment, a method of transmitting data to a wirelessdevice is provided. The method comprises determining a plurality ofnon-peak traffic times for a wireless network and transmitting a firstmessage to a wireless device over the wireless network during one of thenon-peak traffic times. The method also comprises a wireless devicetransmitting statistics about playback of previously downloaded contenton the wireless device, where the transmitting is in response to themessage transmitted to the wireless device. The method also comprisespreparing a package of content selected for the wireless device based onthe statistics and transmitting a second message to the wireless deviceat a time selected based on a prioritization of content distribution toa plurality of wireless devices. The method also comprises the wirelessdevice requesting transmission of the package of content to the wirelessdevice, where the requesting is in response to the second messagetransmitted to the wireless device.

These and other features and advantages will be more clearly understoodfrom the following detailed description taken in conjunction with theaccompanying drawings and claims.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present disclosure and theadvantages thereof, reference is now made to the following briefdescription, taken in connection with the accompanying drawings anddetailed description, wherein like reference numerals represent likeparts.

FIG. 1 illustrates a system for implementing a download prioritizationsystem for intelligent content distribution according to an embodimentof the disclosure.

FIG. 2 illustrates a method according to an embodiment of thedisclosure.

FIG. 3 illustrates a graph of wireless system usage according to anembodiment of the disclosure.

FIG. 4 illustrates a table used in pre-loading according to anembodiment of the disclosure.

FIG. 5 illustrates a method of delivering content to a user according toan embodiment of the disclosure.

FIG. 6 illustrates a method of customizing content for a user accordingto an embodiment of the disclosure.

FIG. 7 illustrates an exemplary handset suitable for implementing theseveral embodiments of the disclosure.

FIG. 8 is a block diagram of a handset suitable for implementing theseveral embodiments of the disclosure.

FIG. 9 illustrates a software environment that may be implemented by thehandset.

FIG. 10 is a block diagram of a base transceiver station according to anembodiment of the disclosure.

FIG. 11 illustrates an exemplary general purpose computer systemsuitable for implementing the several embodiments of the disclosure.

DETAILED DESCRIPTION

It should be understood at the outset that although an illustrativeimplementation of one embodiment of the present disclosure isillustrated below, the present system may be implemented using anynumber of techniques, whether currently known or in existence. Thepresent disclosure should in no way be limited to the illustrativeimplementations, drawings, and techniques illustrated below, includingthe exemplary design and implementation illustrated and describedherein, but may be modified within the scope of the appended claimsalong with their full scope of equivalents.

Modern wireless devices have the ability to receive and display richmultimedia content. This content may include news, entertainment, orother multimedia content of interest to a user. However, wirelessnetworks have the ability to transmit a finite amount of information towireless users. There are many constraints that limit the amount ofinformation, and therefore content, that the wireless network can carry,including, but not limited to, the bandwidth of the data center, thebandwidth of the cell towers, the range of the cell towers, and thebandwidth connecting the cell towers to the data center.

Traditional systems allow a wireless device to contact and requestcontent from a data center. However, these systems have difficultyhandling peak traffic because the request for content during peak timesmay exceed one or more of the bandwidth constraints contained within thedata network. Systems and methods that could compensate for thebandwidth constraints of the data network while still providing contentto users would be desirable. One method of partially compensating forthe bandwidth limitations inherent within the data network is cachingcontent on wireless devices before content is requested. This cachingallows for content to be transmitted to the wireless device based uponuser preferences and/or subscriptions, anticipated requests by a user,or any other disclosed mechanism. By transmitting content to a wirelessdevice during periods of low use and, in some embodiments, over a longertime interval, the problem of satisfying peak loads of content demandwhich may exceed the throughput capacity of the network may be at leastpartially solved. This transmission of content to a plurality ofwireless devices may be performed in a prioritized order based upon theuser preferences, content requested, expected time of playback, or otherfactors disclosed herein during periods when bandwidth is available tothe network. By transmitting content to a plurality of wireless devicesin a prioritized order during periods when bandwidth is available to thenetwork, content may be efficiently distributed to a plurality ofwireless devices. Related details about determining how much content todistribute may be described in U.S. patent application Ser. No.12/124,885 filed May 21, 2008, entitled “Right-sized ContentDistribution” by Jason R. Delker et al., which is hereby incorporated byreference for all purposes.

The prioritized transmission of content to the wireless devices may bebased on a number of factors. The wireless device may be awakened by thenetwork or by a data center or other server that communicates with thewireless device via the network, for example a wireless network or aradio access network, to trigger the wireless device to transmitinformation to the data center or other server. In some contexts, thisawakening of the wireless device to cause it to transmit information maybe referred to as polling the wireless device. The wireless device mayfirst transmit a history of consumption or playback of content cached onthe wireless device to the data center or other server. The history mayinclude information about when the cached content was consumed by a userof the wireless device, how much of the cached content was consumed, andwhat segments or portions of the cached content was skipped. In somecontexts, the history of consumption or playback of content may also bereferred to as statistics of consumption of content previouslytransmitted. Additional contextual information associated with theconsumption and/or playback of the content may also be transmitted, forexample a plurality of locations of the wireless device when the contentwas consumed.

The data center and/or other server may analyze the history ofconsumption and contextual information to determine how much content andwhat kind of content to send to the wireless device. Additionally, thedata center and/or other server may infer a playback time, for examplethe start of a work commute of a user of the wireless device, based onthe information history as well as the contextual information. The datacenter and/or other server may then assemble context, possiblycontaining different segments corresponding to different types of newsstories, for prioritized downloading to the wireless device. The datacenter and/or other server transmits the content to the wireless devicebased on prioritizing the order of downloads to a plurality of wirelessdevices during an off-peak time interval, for example a time extendingfrom about 2 AM to about 5 AM local time, or some other effective timeinterval corresponding to an off-peak time interval. In somecircumstances, there may be multiple off-peak time intervals in one day.Additionally, off-peak time intervals may be different between week daysand weekend days and holidays. The prioritization may be based on anumber of factors including a customary time when content consumptionbegins for each of the plurality of wireless devices, a current storedpower level of each of the wireless devices, the current signal strengthof the link between the wireless devices and the serving basetransceiver station or other access node, and other factors.

In an embodiment, during the first exchange between the wireless deviceand the data center and/or other server, before uploading the history ofcontent consumption and contextual information, the wireless device maytransmit its power management state. If the wireless device is coupledto external power, for example a charger device, or if the wirelessdevice battery has more than a threshold of energy reserve, the datacenter and/or other server, may push or otherwise trigger the wirelessdevice to upload the history of content consumption and the contextualinformation and, later, to download the selected content to the wirelessdevice in the appropriate prioritized order. On the other hand, if thewireless device is not coupled to external power and is operating onbattery power with less than the threshold of energy reserve, the datacenter and/or the other server will forgo pushing or triggering theupload of history and context information and forgo the downloading ofthe selected content to the wireless device in the prioritized order,whereby to not deplete the already low battery power reserve of thewireless device. In some cases, a wireless device experiencing a lowbattery energy reserve may be triggered to upload history and contextinformation but no selected content will be downloaded. In somecircumstances, the battery power reserve and the communication bandwidthavailable for the upload are considered jointly. For example, if only alow bandwidth channel is available for the content download, theduration of the selected content may continue for such an extendedperiod of time that the battery would be undesirably depleted. Variouscircumstances can be associated with a low bandwidth channel. A lowsignal strength between a wireless device and a base transceiver stationmay lead to the selection of a low modulation rate for the radiocommunications, for example modulation based on a smaller quadratureamplitude modulation (QAM) constellation, for example selection of a16-QAM versus a 64-QAM constellation. Specific different technologiesused for data transmission may be associated with low bandwidth, forexample CDMA2000 1xRTT may provide a lower bandwidth channel than thechannel provided by CDMA2000 1 xEV-DO.

FIG. 1 is an example of a data network 10 that could be used consistentwith embodiments disclosed herein. In this example embodiment, a firstbase transceiver station 12 with a first wireless coverage area 20 and asecond base transceiver station 14 with a second wireless coverage area22 are used to deliver information to a plurality of wireless devices. Awireless device 30 is within the coverage area of the first basetransceiver station 12. A second wireless device 32 is within thecoverage area of the first base transceiver station 12 and the secondbase transceiver station 14. A third wireless device 34, a fourthwireless device 36, and a fifth wireless device 38 are within thecoverage area of the second base transceiver station 14. It isunderstood that in the example shown in FIG. 1, each of the wirelessdevices 30, 32, 34, 36 and 38 may communicate with any base transceiverstation that the particular wireless device is within the range of. FIG.1 further illustrates that the first base transceiver station 12 and thesecond base transceiver station 14 are in communication with a datacenter 40.

Wireless devices 30, 32, 34, 36 and 38 are intended to be illustrativewireless devices. For the purpose of clarity, the wireless device 30will be discussed throughout this specification as a representativeexample of the wireless devices 30, 32, 34, 36 and 38. However, it isexplicitly understood that there may be heterogeneous or homogenousgroups of wireless device within the disclosed system 10. The wirelessdevice 30 is intended to refer to any device capable of receiving awireless data signal, including, but not limited to, a mobile telephone,a personal digital assistant (PDA), a media player, or a mobile computerequipped with a wireless interface. It is expressly understood that anydevice can be the wireless device 30 so long as it is equipped with theability to send and receive wireless information from the first basetransceiver station 12 or the second base transceiver station 14.

The data center 40 is intended to refer to one or more general purposecomputers capable of transmitting content from a source to adestination. General purpose computers are discussed in more detailhereinafter. Examples of data centers 40 include, but are not limited tocomputer data centers that store content for use by the wireless device30. Data centers 40 may be in communication with any number of contentsources, including internet sources, as known by one skilled in the art.Within the data center 40 a data server content component 42, atransmission component 44, a network statistic component 46, and anetwork prioritization component 48 are shown. The data server contentcomponent 42, the transmission component 44, the network statisticcomponent 46, and the network prioritization component 48 may beimplemented as hardware, software, or a combination thereof. Moreover,one or more of the components illustrated as part of the data center 40,in some embodiments, may be integrated with elements of one or more basetransceiver stations. For instance, the transmission component 44, insome embodiments, may be integrated into the first base transceiverstation 12. Combined with this disclosure, the implementation of one ormore of the components may be preformed as known to one skilled in theart.

The data server content component 42 receives content for use by atleast one user. This content may be transmitted to the data center 40from any source, including, but not limited to, content transmitted overthe internet. The transmission component 44 transmits the content to atleast one wireless device. The transmission component 44 may transmitcontent through a plurality of base transceiver stations 12, 14. Thenetwork statistic component 46 determines the current status of the datanetwork 10, including the number of wireless devices sharing thetransmission component 44, the number of wireless devices sharing theplurality of base transceiver stations 12, 14 and the availablebandwidth component. For purposes of the present disclosure, availablebandwidth may refer to either current bandwidth not consumed byin-progress communications, or a reserved bandwidth not allocated forthe intelligent content delivery service. The network statisticcomponent 46 may make this determination based on data obtained by aplurality of base transceiver stations 12, 14. The networkprioritization component 48 accepts requests by a plurality of wirelessdevices 30, 32, 34, 36, 38 for content and orders and/or sequences thetransmission of the content to the plurality of wireless devices.

In the embodiment illustrated in FIG. 1, one or more of the wirelessdevices 30, 32, 34, 36, 38 may be subscribed to one or more sources ofcontent. These sources of content may be any sources of content,including, but not limited to news, entertainment, sports, or othercontent. The content may comprise audio content, text content, videocontent, multimedia content, and other content. Each of these contentsources may deliver content to the wireless device 30 in formsincluding, but not limited to, text, video, audio, multimedia, or audioand video. One of the problems in delivering this content is thaton-demand bandwidth (e.g. the bandwidth available to the wireless device30 at any given time) may be insufficient during peak usage time toallow for content to be transferred to the wireless device from the basetransceiver station or the data center. For example users of thewireless devices 30, 32, 34, 36, and 38 may wish to consume the contentduring their commute to work during rush hour. The network may not beengineered to provide the throughput capacity to satisfy this peak hourdemand in real-time.

If the demanded throughput overloads the network 10, networkinterruption, poor content quality, or content delivery failure mayoccur. The present disclosure contemplates numerous systems and methodswhich compensate for limited throughput capacity. It is expresslyunderstood that these systems and methods may be used simultaneously, orany individual system or method disclosed herein may be used without theneed to implement all of the disclosed systems and methods.

In one embodiment, content is delivered to the wireless devices (e.g.the wireless devices 30, 32, 34, 36 and 38) at different times. Byreducing the number of the wireless devices 30, 32, 34, 36, 38simultaneously requesting content, the amount of overall requiredbandwidth may be decreased. Disclosed herein are several systems andmethods to reduce the total number of the wireless devices 30, 32, 34,36, 38 simultaneously requesting content. In some of these systems andmethods, a process called ‘pre-loading’ is used. Pre-loading is intendedto include, but not be limited to, a process by which content isprovided to the wireless device 30 prior to a request for viewing ofcontent on the wireless device 30.

In some embodiments, pre-loading is performed prior to the wirelessdevice 30 requesting to use the content. The selection of content to bepre-loaded may be performed in various ways. For example, the contentmay be pre-loaded based on the explicit request of the wireless device30, for example by subscription to specific content. Alternatively, thecontent may be pre-loaded based on a usage history of the wirelessdevice 30 (e.g. a user reads the same newspaper every morning). The datacenter 40, or some component within the data center 40, may have accessto the usage history of the wireless device 30, or the wireless device30 can be trained to anticipate the user's habits by tracking the user'sprior history. In other embodiments, other processes for selecting thecontent to be pre-loaded may be employed.

For example, in an embodiment, the data center 40 may transmit a firstmessage to the wireless device 30 via the first base transceiver station12. In some contexts, this may be referred to as the data center 40pushing the first message to the wireless device 30. This first messagemay cause the wireless device 30 to awaken from a dormant state that mayhave been entered after a time out period of non-use to conserve batterypower. In response to the first message, the wireless device 30transmits statistics about consumption of the content that was providedto the wireless device 30 the day before, for example information aboutplayback of the previous content. The wireless device 30 may alsotransmit other information including a current battery power reserve anda connected/unconnected to external power status.

The data center 40 may analyze the statistics to determine anappropriate selection of content to accumulate into a content package.The content package may be appropriately sized for the amount of contentplayed back by the wireless device 30. The data center 40 transmits asecond message to the wireless device 30 at a time which is appropriatefor the wireless device 30 to receive the content package, for exampleat a time suitable to a prioritized order of transmission of a pluralityof independent content packages to other wireless devices. In somecontexts, this may be referred to as the data center 40 pushing thesecond message to the wireless device 30. The second message may causethe wireless device 30 to awaken from a dormant state. The wirelessdevice 30 then requests the transmission of the content package from thedata center 40 to the wireless device 30, under control of the wirelessdevice 30. In some contexts, this may be referred to as the wirelessdevice 30 pulling the content package from the data center 40. In thecase that the battery state of the wireless device 30 is indicated to bebelow a first predefined threshold and the wireless device is notconnected to external power, for example to a battery charger, the datacenter 40 will not send the second message. In the case that the batterystate is above the first threshold but below a second threshold and theavailable communication bandwidth between the wireless device 30 and thefirst base transceiver station 12 is below a third threshold, implyingthe transmission of the content package would take a long period of timeand hence deplete the battery of the wireless device 30 excessively, thedata center 40 will not send the second message.

FIG. 2 is a flowchart of a method 50 of intelligent contentdistribution. In block 52 the data network 10 determines the contentpreferences of a user associated with the wireless device 30. Asdiscussed above, these content preferences may be determined through anynumber of methods including, but not limited to, the explicit requestsof the user, the usage pattern of the user, the anticipated pattern ofusers, advertisement that may be directed to a user, or any otherpreference known to one skilled in the art. The content preferences ofthe user may be determined by the wireless devices 30, 32, 34, 36, 38being subscribed to receive specific types of content. In block 54, thedata network 10 determines the usage habits of the associated user ofthe wireless device 30. These usage habits include the amount of datathat is transferred in delivering the content determined in block 52 andthe location of the wireless device 30 at different times. In block 56,the available wireless resources are determined. These resourcesinclude, but are not limited to, the available bandwidth, the availablecontent, and other network considerations known by one skilled in theart. It is expressly understood that the available bandwidth may, insome embodiments, be a function related to a percentage of the availablebandwidth. In block 58 an order of pre-loading is determined. The orderof pre-loading, in some embodiments, may be determined based upon theusage habits of the user associated with the wireless device 30, theavailable wireless resources, or another metric (e.g. wireless serviceplan the wireless user has subscribed to, type of content, etc.). Theorder of the pre-loading is intended to refer to the order in which datais transmitted to the wireless devices 30, 32, 34, 36, and 38. In block60, the content is delivered.

The order of the pre-loading promotes content being delivered to thewireless devices 30, 32, 34, 36, and 38 prior to the content to beingrequested and/or used. For instance, the delivery of content to acommuter who uses a weather report early in the morning may beprioritized over or scheduled ahead of the delivery of content to adifferent user who uses a weather report late in the afternoon. Theordering of the distribution of content, and consequently the priorityof the user in content distribution, may be based upon the time ofcontent use and the type of content being used. It is further explicitlyunderstood that the order of pre-loading may be performed for anyreason, including, but not limited to, the specific content beingrequested (e.g. emergency information may have higher priority thannon-emergency information, a subscriber may pay a premium for exclusivecontent and higher priority delivery, etc.).

In an embodiment, the data center 40 may poll the wireless device 30 toobtain a first set of statistics about playback or consumption ofcontent that had been transmitted previously, for example the daybefore, to the wireless device 30. As part of the polling exchange ordialog, the wireless device 30 provides statistics or information aboutthe playback of consumption of the content, for example when the contentwas played, how much of the content was played, what portion of thecontent was not played. Additionally, other contextual information maybe provided, including a plurality of locations of the wireless device30 during the playback. The data center 40 may also poll the secondwireless device 32 to obtain a second set of statistics about playbackor consumption of the content that had been transmitted previously tothe second wireless device 32.

The data center 40 may determine the resources available to transmit afirst content and a second content, for example a first content packageand a second package content, to the wireless device 30 and the secondwireless device 32, respectively. The first content package is selectedand composed based on the statistics transmitted by the wireless device30. Similarly, the second content package is selected and composed basedon the statistics transmitted by the second wireless device 32. The datacenter 40 may create a priority list based on the first and the secondstatistics that identifies a preferred order for transmitting thecontent packages to the wireless device 30 and the second wirelessdevice 32. The data center 40 then transmits the content packages to thewireless device 30 and the second wireless device 32 in the priorityorder, for example via the base transceiver station 12, 14. While inthis simple example, only two wireless devices 30, 32 are discussed, inpractice it may be expected that there may be many more wireless devicesthat the data center 40 transmits selected content packages to in aprioritized order.

One of the factors that affects the available bandwidth is the networkutilization. In some embodiments, network utilization generally mayrefer to the percentage of the network bandwidth that is currently inuse. During peak traffic times, network utilization is generally higherthan during non-peak traffic times. FIG. 3 is a graph of the networkutilization at different times. In this embodiment, the y-axisrepresents network utilization 72 and the x-axis represents time 74. Thegraph that is shown illustrates that a peak time 76 is shown with anon-peak time 78. During peak times 76, such as commute times, theavailable network resources are significantly lower than during non-peaktimes 78, such as late at night. For purposes of illustration, the peaktime 76 consumes all available bandwidth—for example, demanded trafficmay exceed or equal offered traffic. Therefore, during non-peak times 78multimedia content may be transmitted to the wireless devices 30, 32,34, 36, and 38 without degrading network quality. The peak times 76 andnon-peak times 78 can be identified by any method known to one skilledin the art, including, but not limited to, tracking prior usage of thenetwork. If the peak time 76 exceeds the maximum network throughput line79, network transmission problems may occur. By identifying the non-peaknetwork times 78, downloads and pre-loading may be scheduled for timeswhere there is not peak usage of the network, thereby promotingefficient use of the network.

FIG. 4 is an example of a table 80 that might be created by the datacenter 40 for use in determining the order of pre-loading. It isexpressly understood that this table may be created by the data center40 or the base transceiver station 12 by any number of methods,including, but not limited to, the type of content being requested orother information associated with the wireless device 30. This tableincludes four columns: a device column 82, a time column 84, a contentcolumn 86, and a priority column 88. This table illustrates howpre-loading can be ordered to allow for downloading based upon requestedcontent and the priority of the requested content. Low priority content,such as information that is not considered to be emergency content, maybe transmitted during non-peak times. Higher priority content, such asemergency weather information, or information that is specificallysubscribed to as high priority content, may be transmitted during peaktimes. Through the use of ordering content to be transmitted to awireless user, rich multimedia content may be delivered to a wirelessuser without degrading the network.

At the time indicated in FIG. 4 listed in the time column 84, thewireless device will be “woken up” and instructed to provide the statusof the device to the data center 40. If the wireless device 30 is readyto accept content, the wireless device will be instructed to proceed andrequest content. It is expressly understood that the data center 40, insome embodiments, may be designated to only alert the wireless device 30that it is time to obtain the content. In some embodiments, this mayhave the advantages of allowing the data center 40 to regulate bandwidthusage of the network. It is expressly understood that the contentobtained by the wireless device 30 may or may not originate from or passthrough the data center 40. The type of information obtained by thewireless device 30 is illustrated by the content column 86.

FIG. 5 is an exemplary method 100 of how to wake up, prepare, andtransmit data to the wireless device 30. In block 102, the currentnetwork conditions are determined. Current network conditions may, insome embodiments, include the available bandwidth available in thenetwork. In block 104 the status of the wireless device 30 is polled.Polling refers to the process by which information is obtained from thewireless device 30. The information obtained from the wireless device 30may include information related to the location of the wireless device30, the battery status of the wireless device 30, the signal strength ofthe wireless device 30, prior content accessed from the wireless device30, or any other information that may be obtained from the wirelessdevice 30. In block 106, the content is checked to make sure that it isavailable to be sent to the wireless device 30. In block 108, thecontent is sent to the wireless device 30.

As discussed above, the battery status and the signal strength or thebandwidth of the wireless communication channel of the wireless device30 may be used to make a decision to forgo sending content to thewireless device 30 in block 108. Users generally do not like to findtheir wireless device 30 inoperable due to insufficient power because ofautomated applications. The determination that the battery status of thewireless device 30 is below about 30% capacity, about 25% capacity,about 20% capacity, or some other effective capacity, may be used toforgo sending content to the wireless device 30. The battery status mayinclude information about a coupled to external power state, for examplecharging from an AC outlet. When coupled to external power, the batteryreserve level may be ignored and the content sent to the wireless device30. The signal strength or the bandwidth of the wireless communicationchannel may be employed similarly or cooperatively with the batteryreserve status, because a poor signal strength and/or a low bandwidth ofthe wireless communication channel may cause the wireless device 30 toconsume more power receiving the content than if a strong signalstrength or high bandwidth wireless communication channel prevailed.

Pseudo-code that might be used to transmit data in one embodimentsimilar to the method illustrated by FIG. 5 might appear like:

sub (contact device)

When (time=scheduled pre-loading transmission)

Contact wireless device;

If battery of wireless device=>acceptable level then

-   -   If network available (check signal strength, location, available        network resources at location) then    -   Transmit content    -   Else    -   Error message

Error message

End sub;

One of the issues that the disclosed systems and methods compensate foris the movement of a mobile device from first wireless coverage area 20.As illustrated by FIG. 1, the number of the wireless devices 30, 32, 34,36, and 38 within the wireless coverage area 20, 22 of the basetransceiver station 12, 14 may vary. Therefore, the available bandwidthto the wireless device 30 may vary depending on the location of thewireless device 30. By determining the location of the wireless device30, the available bandwidth at the current location of the wirelessdevice 30 may be determined, and the data network 10 may ensure thatsufficient bandwidth exists at the current location for contentdelivery.

It is expressly understood that while the method of waking the wirelessdevice 30 has been discussed in the “pull” sense (e.g., the wirelessdevice requests content) it is also understood that the wireless devicemay have content “pushed” to it by the data center 40 or by one or moresources. Moreover, the wireless device 30, when woken, may be alertedthat a feed which is transmitted over the wireless network in a generalsense is available. For instance, the wireless device 30 may be directedto wake up when a generic news feed is transmitted over a WiMAX channel.In this way, the wireless device 30 can be programmed to wake up and“capture” a feed which is being transmitted, even though that feed isnot being transmitted directly to the wireless device 30. In the exampleof the “capture” of a feed, the wireless device 30 may only record partof the wireless feed that corresponds to the preferences of the userwith the wireless device 30.

FIG. 6 illustrates a method 110 for using the information obtained bythe polling discussed in the method disclosed by FIG. 5. Polling thewireless device 30 is one method of determining the wireless device 30usage information. From this usage information, preferences may bedetermined. This may, in some embodiments, permit additional content tobe transmitted to a user if sufficient resources existed at the currentlocation of the wireless device 30. One example of this is that if auser is subscribed to sports information, and there is a significantamount of excess bandwidth, content encoded at a higher bandwidth (e.g.450 kbps) may be transmitted rather than content at a lower bandwidth(e.g. 100 kbps). Moreover, the length of the clip may be altered basedupon the location of the user and the user's preferences. The morebandwidth available to a user, the more content that may be delivered tothe user. For instance, if there is a significant amount of bandwidthavailable, there may be a one minute clip transmitted, while if only alimited amount of bandwidth is available, only a 10 second clip may bedownloaded.

As shown in block 112 of FIG. 6, the wireless device 30 is polled andthe location of the wireless device 30 is determined. The wirelessdevice 30 is then polled for usage in block 114. Usage information mayinclude information (e.g. sports, news, etc.) the user has previouslyaccessed. The usage information can also include content playback timesand commute times inferred from a time sequence record of locations ofthe wireless device 30. Block 116 shows that the data center 40 cancustomize content for the user. In block 118 this content is thentransmitted to the user.

FIG. 7 depicts the wireless device 30, which is operable forimplementing aspects of the present disclosure, but the presentdisclosure should not be limited to these implementations. Thoughillustrated as a mobile phone, the wireless device 30 may take variousforms including a wireless handset, a pager, a personal digitalassistant (PDA), a portable computer, a tablet computer, or a laptopcomputer. Many suitable handsets combine some or all of these functions.In some embodiments of the present disclosure, the wireless device 30 isnot a general purpose computing device like a portable, laptop or tabletcomputer, but rather is a special-purpose communications device such asa mobile phone, wireless handset, pager, or PDA. The wireless device 30may support specialized activities such as gaming, inventory control,job control, and/or task management functions, and so on.

The wireless device 30 includes a screen 132 and a touch-sensitivesurface or keys 134 for input by a user. The wireless device 30 maypresent options for the user to select, controls for the user toactuate, and/or cursors or other indicators for the user to direct. Thewireless device 30 may further accept data entry from the user,including numbers to dial or various parameter values for configuringthe operation of the handset. The wireless device 30 may further executeone or more software or firmware applications in response to usercommands. These applications may configure the wireless device 30 toperform various customized functions in response to user interaction.Additionally, the wireless device 30 may be programmed and/or configuredover-the-air, for example from a wireless base transceiver station, awireless access point, or a peer wireless device 30.

The wireless device 30 may execute a web browser application whichenables the screen 132 to show a web page. The web page may be obtainedvia wireless communications with a first base transceiver station 12, awireless network access node, a peer handset or any other wirelesscommunication network or system. The first base transceiver station 12(or wireless network access node) is coupled to a wired network 136,such as the Internet. Via the wireless link and the wired network, thewireless device 30 has access to information on various servers, such asa server 140. The server 140 may provide content that may be shown onthe screen 132. Alternately, the wireless device 30 may access the firstbase transceiver station 12 through the wireless device 30 acting as anintermediary, in a relay type or hop type of connection.

FIG. 8 shows a block diagram of the wireless device 30. While a varietyof known components of wireless device 30 are depicted, in an embodimenta subset of the listed components and/or additional components notlisted may be included in the wireless device 30. The wireless device 30includes a digital signal processor (DSP) 152 and a memory 154. Asshown, the wireless device 30 may further include an antenna and a frontend unit 156, a radio frequency (RF) transceiver 158, an analog basebandprocessing unit 150, a microphone 162, an earpiece speaker 164, aheadset port 166, an input/output interface 168, a removable memory card170, a universal serial bus (USB) interface 172, an infrared port 174, avibrator 176, a keypad 178, a touch screen liquid crystal display (LCD)with a touch sensitive surface screen 180, a touch screen/LCD controller182, a charge-coupled device (CCD) camera 184, a camera controller 186,and a global positioning system (GPS) sensor 188. In an embodiment, thewireless device 30 may include another kind of display that does notprovide a touch sensitive screen. In an embodiment, the DSP 152 maycommunicate directly with the memory 154 without passing through theinput/output interface 168.

The DSP 152 or some other form of controller or central processing unitoperates to control the various components of the wireless device 30 inaccordance with embedded software or firmware stored in memory 154 orstored in memory contained within the DSP 152 itself. In addition to theembedded software or firmware, the DSP 152 may execute otherapplications stored in the memory 154 or made available via informationcarrier media such as portable data storage media like the removablememory card 170 or via wired or wireless network communications. Theapplication software may comprise a compiled set of machine-readableinstructions that configure the DSP 152 to provide the desiredfunctionality, or the application software may be high-level softwareinstructions to be processed by an interpreter or compiler to indirectlyconfigure the DSP 152.

The antenna and front end unit 156 may be provided to convert betweenwireless signals and electrical signals, enabling the wireless device 30to send and receive information from a cellular network or some otheravailable wireless communications network or from a peer handset. In anembodiment, the antenna and front end unit 156 may include multipleantennas to support beam forming and/or multiple input multiple output(MIMO) operations. As is known to those skilled in the art, MIMOoperations may provide spatial diversity which can be used to overcomedifficult channel conditions and/or increase channel throughput. Theantenna and front end unit 156 may include antenna tuning and/orimpedance matching components, RF power amplifiers, and/or low noiseamplifiers.

The RF transceiver 158 provides frequency shifting, converting receivedRF signals to baseband and converting baseband transmit signals to RF.In some descriptions a radio transceiver or RF transceiver may beunderstood to include other signal processing functionality such asmodulation/demodulation, coding/decoding, interleaving/deinterleaving,spreading/despreading, inverse fast Fourier transforming (IFFT)/fastFourier transforming (FFT), cyclic prefix appending/removal, and othersignal processing functions. For the purposes of clarity, thedescription here separates the description of this signal processingfrom the RF and/or radio stage and conceptually allocates that signalprocessing to the analog baseband processing unit 150 and/or the DSP 152or other central processing unit. In some embodiments, the RFtransceiver 158, portions of the antenna and front end unit 156, and theanalog baseband processing unit 150 may be combined in one or moreprocessing units and/or application specific integrated circuits(ASICs).

The analog baseband processing unit 150 may provide various analogprocessing of inputs and outputs, for example analog processing ofinputs from the microphone 162 and the headset port 166 and outputs tothe earpiece speaker 164 and the headset port 166. To that end, theanalog baseband processing unit 150 may have ports for connecting to thebuilt-in microphone 162 and the earpiece speaker 164 that enable thewireless device 30 to be used as a cell phone. The analog basebandprocessing unit 150 may further include a port for connecting to aheadset or other hands-free microphone and speaker configuration. Theanalog baseband processing unit 150 may provide digital-to-analogconversion in one signal direction and analog-to-digital conversion inthe opposing signal direction. In some embodiments, at least some of thefunctionality of the analog baseband processing unit 150 may be providedby digital processing components, for example by the DSP 152 or by othercentral processing units.

The DSP 152 may perform modulation/demodulation, coding/decoding,interleaving/deinterleaving, spreading/despreading, inverse fast Fouriertransforming (IFFT)/fast Fourier transforming (FFT), cyclic prefixappending/removal, and other signal processing functions associated withwireless communications. In an embodiment, for example in a codedivision multiple access (CDMA) technology application, for atransmitter function the DSP 152 may perform modulation, coding,interleaving, and spreading, and for a receiver function the DSP 152 mayperform despreading, deinterleaving, decoding, and demodulation. Inanother embodiment, for example in an orthogonal frequency divisionmultiplex access (OFDMA) technology application, for the transmitterfunction the DSP 152 may perform modulation, coding, interleaving,inverse fast Fourier transforming, and cyclic prefix appending, and fora receiver function the DSP 152 may perform cyclic prefix removal, fastFourier transforming, deinterleaving, decoding, and demodulation. Inother wireless technology applications, yet other signal processingfunctions and combinations of signal processing functions may beperformed by the DSP 152.

The DSP 152 may communicate with a wireless network via the analogbaseband processing unit 150. In some embodiments, the communication mayprovide Internet connectivity, enabling a user to gain access to contenton the Internet and to send and receive e-mail or text messages. Theinput/output interface 168 interconnects the DSP 152 and variousmemories and interfaces. The memory 154 and the removable memory card170 may provide software and data to configure the operation of the DSP152. Among the interfaces may be the USB interface 172 and the infraredport 174. The USB interface 172 may enable the wireless device 30 tofunction as a peripheral device to exchange information with a personalcomputer or other computer system. The infrared port 174 and otheroptional ports such as a Bluetooth interface or an IEEE 802.11 compliantwireless interface may enable the wireless device 30 to communicatewirelessly with other nearby handsets and/or wireless base transceiverstations.

The input/output interface 168 may further connect the DSP 152 to thevibrator 176 that, when triggered, causes the wireless device 30 tovibrate. The vibrator 176 may serve as a mechanism for silently alertingthe user to any of various events such as an incoming call, a new textmessage, and an appointment reminder.

The keypad 178 couples to the DSP 152 via the input/output interface 168to provide one mechanism for the user to make selections, enterinformation, and otherwise provide input to the wireless device 30.Another input mechanism may be the touch LCD screen 180, which may alsodisplay text and/or graphics to the user. The touch screen LCDcontroller 182 couples the DSP 152 to the touch LCD screen 180.

The CCD camera 184 enables the wireless device 30 to take digitalpictures. The DSP 152 communicates with the CCD camera 184 via thecamera controller 186. The GPS sensor 188 is coupled to the DSP 152 todecode global positioning system signals, thereby enabling the wirelessdevice 30 to determine its position. In another embodiment, a cameraoperating according to a technology other than Charge Coupled Devicecameras may be employed. Various other peripherals may also be includedto provide additional functions, e.g., radio and television reception.

FIG. 9 illustrates a software environment 240 that may be implemented bythe DSP 152. The DSP 152 executes operating system drivers 242 thatprovide a platform from which the rest of the software operates. Theoperating system drivers 242 provide drivers for the handset hardwarewith standardized interfaces that are accessible to applicationsoftware. The operating system drivers 242 include applicationmanagement services (“AMS”) 244 that transfer control betweenapplications running on the wireless device 30. Also shown in FIG. 9 area web browser application 246, a media player application 248, and JAVAapplets 250. The web browser application 246 configures the wirelessdevice 30 to operate as a web browser, allowing a user to enterinformation into forms and select links to retrieve and view web pages.The media player application 248 configures the wireless device 30 toretrieve and play audio or audiovisual media. The JAVA applets 250configure the wireless device 30 to provide games, utilities, and otherfunctionality.

FIG. 10 illustrates one embodiment of the first base transceiver station12 embodied as a base transceiver station that can be used with thedisclosed systems. In this embodiment, the first base transceiverstation 12 is a medium to high-power multi-channel, two-way radio in afixed location. Typically the first base transceiver station 12 may beused by low-power, single-channel, two-way radios or wireless devicessuch as mobile phones, portable phones and wireless routers. The firstbase transceiver station 12 may comprise a signal controller 200 that iscoupled to a transmitter 202 and a receiver 204. The transmitter 202 andthe receiver 204 (or combined transceiver) are further coupled to anantenna 206. In the first base transceiver station 12, digital signalsare processed in the signal controller 200. The digital signals may besignals for a wireless communication system, such as signals that conveyvoice or data intended for a mobile terminal (not shown). First basetransceiver station 12 may employ any suitable wireless technologies orstandards including, but not limited to, 2G, 2.5G, 3G, GSM, IMT-2000,UMTS, iDEN, GPRS, 1xEV-DO, EDGE, DECT, PDC, TDMA, FDMA, CDMA, W-CDMA,LTE, TD-CDMA, TD-SCDMA, GMSK, OFDM, WiMAX, the family of IEEE 802.11standards, the family of IEEE 802.16 standards, IEEE 802.20, etc. Signalcontroller 200 then transmits the digital signals to transmitter 202,which includes a channel processing circuitry 208. Channel processingcircuitry 208 encodes each digital signal, and a radio frequency (RF)generator 210 modulates the encoded signals onto an RF signal. Theresulting output signal is transmitted over antenna 206 to the mobileterminal. Antenna 206 also receives signals sent to first basetransceiver station 12 from the mobile terminal. Antenna 206 transmitsthe received signals to receiver 204 that demodulates them into digitalsignals and transmits the received signals to signal controller 200where they may be relayed to an external network 212. First basetransceiver station 12 may also comprise auxiliary equipment such ascooling fans or air exchangers for the removal of heat from first basetransceiver station 12.

Portions of the system described above, for example the data center 40,may be implemented on any general-purpose computer with sufficientprocessing power, memory resources, and network throughput capability tohandle the necessary workload placed upon it. FIG. 11 illustrates atypical, general-purpose computer system suitable for implementing oneor more embodiments disclosed herein. The computer system 220 includes aprocessor 222 (which may be referred to as a central processor unit orCPU) that is in communication with memory devices including secondarystorage 224, read only memory (ROM) 226, random access memory (RAM) 228,input/output (I/O) devices 230, and network connectivity devices 232.The processor may be implemented as one or more CPU chips.

The secondary storage 224 is typically comprised of one or more diskdrives or tape drives and is used for non-volatile storage of data andas an over-flow data storage device if RAM 228 is not large enough tohold all working data. Secondary storage 224 may be used to storeprograms which are loaded into RAM 228 when such programs are selectedfor execution. The ROM 226 is used to store instructions and perhapsdata which are read during program execution. ROM 226 is a non-volatilememory device which typically has a small memory capacity relative tothe larger memory capacity of secondary storage. The RAM 228 is used tostore volatile data and perhaps to store instructions. Access to bothROM 226 and RAM 228 is typically faster than to secondary storage 224.

I/O devices 230 may include printers, video monitors, liquid crystaldisplays (LCDs), touch screen displays, keyboards, keypads, switches,dials, mice, track balls, voice recognizers, card readers, paper tapereaders, or other well-known input devices. The network connectivitydevices 232 may take the form of modems, modem banks, Ethernet cards,universal serial bus (USB) interface cards, serial interfaces, tokenring cards, fiber distributed data interface (FDDI) cards, wirelesslocal area network (WLAN) cards, radio transceiver cards such as codedivision multiple access (CDMA) global system for mobile communications(GSM), and/or worldwide interoperability for microwave access (WiMAX)radio transceiver cards, and other well-known network devices. Thesenetwork connectivity device 232 may enable the processor 222 tocommunicate with an Internet or one or more intranets. With such anetwork connection, it is contemplated that the processor 222 mightreceive information from the network, or might output information to thenetwork in the course of performing the above-described method steps.Such information, which is often represented as a sequence ofinstructions to be executed using processor 222, may be received fromand outputted to the network, for example, in the form of a computerdata signal embodied in a carrier wave.

Such information, which may include data or instructions to be executedusing processor 222 for example, may be received from and outputted tothe network, for example, in the form of a computer data baseband signalor signal embodied in a carrier wave. The baseband signal or signalembodied in the carrier wave generated by the network connectivitydevices 232 may propagate in or on the surface of electrical conductors,in coaxial cables, in waveguides, in optical media, for example opticalfiber, or in the air or free space. The information contained in thebaseband signal or signal embedded in the carrier wave may be orderedaccording to different sequences, as may be desirable for eitherprocessing or generating the information or transmitting or receivingthe information. The baseband signal or signal embedded in the carrierwave, or other types of signals currently used or hereafter developed,referred to herein as the transmission medium, may be generatedaccording to several methods well known to one skilled in the art.

The processor 222 executes instructions, codes, computer programs,scripts which it accesses from hard disk, floppy disk, optical disk(these various disk based systems may all be considered secondarystorage 224), ROM 226, RAM 228, or the network connectivity devices 232.While only one processor 222 is shown, multiple processors may bepresent. Thus, while instructions may be discussed as executed by aprocessor, the instructions may be executed simultaneously, serially, orotherwise executed by one or multiple processors.

While several embodiments have been provided in the present disclosure,it should be understood that the disclosed systems and methods may beembodied in many other specific forms without departing from the spiritor scope of the present disclosure. The present examples are to beconsidered as illustrative and not restrictive, and the intention is notto be limited to the details given herein. For example, the variouselements or components may be combined or integrated in another systemor certain features may be omitted or not implemented.

Also, techniques, systems, subsystems, and methods described andillustrated in the various embodiments as discrete or separate may becombined or integrated with other systems, modules, techniques, ormethods without departing from the scope of the present disclosure.Other items shown or discussed as directly coupled or communicating witheach other may be indirectly coupled or communicating through someinterface, device, or intermediate component, whether electrically,mechanically, or otherwise. Other examples of changes, substitutions,and alterations are ascertainable by one skilled in the art and could bemade without departing from the spirit and scope disclosed herein.

1. A method of transmitting multimedia data, comprising: polling a firstwireless device to obtain at least a first statistics of consumption ofcontent previously transmitted to the first wireless device; polling asecond wireless device to obtain at least a second statistics ofconsumption of content previously transmitted to the second wirelessdevice; determining the resources available to transmit a first contentand a second content to the first and second wireless device, whereinthe first content to be transmitted to the first wireless device isselected based on the first statistics of consumption, and wherein thesecond content to be transmitted to the second wireless device isselected based on the second statistics of consumption; creating apriority list based on the first statistics of consumption and thesecond statistics of consumption, wherein the priority list comprisesthe first wireless device and the first content and the second wirelessdevice and the second content; and transmitting the first content to thefirst wireless device and the second content to the second wirelessdevice according to the priority list and according to the resourcesavailable.
 2. The method of claim 1, wherein the resources availablecomprise the available network bandwidth to transmit data.
 3. The methodof claim 2, wherein the resources available are determined based onhistorical network data.
 4. The method of claim 1, wherein the prioritylist is based on a type of content, a subscriber of the content, and atime the content is consumed.
 5. The method of claim 1, wherein thepolling the first wireless device includes obtaining a power supplystatus of the first wireless device and the polling the second wirelessdevice includes obtaining a power supply status of the second wirelessdevice.
 6. The method of claim 5, wherein when the first device powersupply status does not indicate the first device is connected to anexternal source of power and the battery power reserve is less than afirst predefined threshold, the first content is not transmitted to thefirst wireless device.
 7. The method of claim 6, wherein when the firstdevice power supply status does not indicate the first device isconnected to an external source of power and the battery power reserveis less than a second predefined threshold, wherein the secondpredefined threshold is higher than the first predefined threshold, andwhen a radio channel associated with the first wireless device has abandwidth less than a third predefined threshold, the first content isnot transmitted to the first wireless device.
 8. The method of claim 1,wherein the content is multimedia content.
 9. The method of claim 1,wherein the content is transmitted to the wireless device using awireless network that uses a technology selected from the group of WiFi,WiMAX, CDMA, TDMA, EDGE, and GSM.
 10. The method of claim 1, wherein thecontent is transmitted to the wireless device using a wireless networkand wherein the available network resources include estimates as to atotal number of wireless devices being served by a base transceiverstation.
 11. The method of claim 1, wherein the first statistics ofconsumption of content and the second statistics of consumption ofcontent include the length of content used by the user, the type ofcontent used by the user, and the time of day the content is used by theuser.
 12. A system for prioritizing the transmission of wireless data,the system comprising: a data server content component, wherein the dataserver content component receives content; a transmission component totransmit the content to an at least one wireless device; a networkstatistic component to determine the current status of the networkincluding a number of wireless devices in the coverage area of thetransmission component and an available bandwidth; and a networkprioritization component that polls the at least one wireless device todetermine a history of usage of a previously transmitted content and todetermine a current power status of the at least one wireless device andwhen the current power status of the at least one wireless device is atleast one of connected to external power or battery power reserve abovea predefined threshold promotes transmission of the content by thetransmission component.
 13. The system of claim 12, wherein the networkprioritization component orders the transmission of the content based onthe time the at least one wireless device will use the content, thecurrent status of the network, the available bandwidth of the network,and the type of content requested by the wireless device.
 14. The systemof claim 13, further comprising a wireless feedback component, whereinthe wireless feedback component accepts usage information from the atleast one wireless device and transmits the usage information from theat least one wireless device to the network prioritization component.15. The system of claim 12, wherein the content is multimedia content.16. The system of claim 12, wherein the transmission component transmitscontent using a wireless network.
 17. A method of transmitting data to awireless device, comprising: determining a plurality of non-peak traffictimes for a wireless network; transmitting a first message to a wirelessdevice over the wireless network during one of the non-peak traffictimes; a wireless device transmitting statistics about playback ofpreviously downloaded content on the wireless device, where thetransmitting is in response to the message transmitted to the wirelessdevice; preparing a package of content selected for the wireless devicebased on the statistics; transmitting a second message to the wirelessdevice at a time selected based on a prioritization of contentdistribution to a plurality of wireless devices; and the wireless devicerequesting transmission of the package of content to the wirelessdevice, where the requesting is in response to the second messagetransmitted to the wireless device.
 18. The method of claim 17, whereinthe wireless device further transmits at least one of a connected toexternal power condition, a battery state, a location of the wirelessdevice, and a signal strength along with the statistics.
 19. The methodof claim 18, wherein when the wireless device transmits an indicationthat the wireless device is not in the connected to external powercondition and an indication that the battery state is below a predefinedthreshold, the second message is not transmitted.
 20. The method ofclaim 17, wherein the first and second messages are transmitted throughat least one base transceiver station and wherein the base transceiverstation uses technology comprising one of GMS, WiMAX, UTMS, CDMA, EDGE,and TDMA.